package org.ccay.validator;

/**
 * IValidatorTarget
 * 
 * 指定验证的目标对象
 * 
 * 因xwork验证框架中，默认验证对象为调用的类，无法指定。
 * 加此接口，来指定验证的目标对象。
 * 
 * @author chaowangbang
 *
 */
public interface IValidatorContext {
    
    /**
     * @param <T>
     * @param key
     * @param requiredType
     * @return Returns the configured params to set on the validator. 
     */
    public <T> T getParam(String key, Class<T> requiredType);
    
    /**
     * @param key
     * @param value
     */
    public void setParam(String key, Object value);
    
    /**
     * Add action error	
     * 
     * @since Feb 28, 2012
     * @param message
     */
    public void addActionError(ValidationMessage message);
    
    /**
     * Add field error.
     * 	
     * 
     * @since Feb 28, 2012
     * @param message
     */
    public void addFieldError(ValidationMessage message);
    
}
